function [chrom,Z_chrom,share,Z_share]=bird_evolution(chrom,Z_chrom,share,Z_share,neigh_size,share_size,total_op_num,FF)
neigh=generate_neigh(chrom,neigh_size,total_op_num);
[Z_neigh,~,~,~] = fitness(neigh,FF);
neigh=[neigh;share;chrom];
Z_neigh=[Z_neigh,Z_share,Z_chrom];
[Z_neigh,ind]=sort(Z_neigh);
neigh=neigh(ind,:);
chrom=neigh(1,:);
Z_chrom=Z_neigh(1);
share=neigh(2:share_size,:);
Z_share=Z_neigh(2:share_size);